package com.rockcent.mall.lib.dto;

import com.rockcent.common.domain.DtoEntity;
import com.rockcent.mall.lib.domain.enumclass.FaceValueType;

import javax.persistence.Column;
import java.math.BigDecimal;

/**
 * Created by zhangjh on 2016/12/19.
 */
public class MallCashCouponDto extends DtoEntity {

    /**
     *
     */
    private Long mallId;
    /**
     * 现金券
     */
    private String name;

    private String faceValueType;

    private BigDecimal faceValue;

    /**
     * 发放总量
     */
    private Long quantity;

    private Long leaveTotal;

    /**
     * 状态 WAIT_ISSUE("待发放"), ISSUED("已发放")
     */
    private String status;


    /**
     * 积分渠道id
     */
    private Long integrationChannelId;
    /**
     * 积分渠道名称
     */
    private String integrationChannelName;

    /**
     * 兑换数量：在积分渠道兑换的情况
     */
    private Long exchangeNum;

    /**
     * 领取数量：到平台兑换，叫领取
     */
    private Long receiveNum;

    /**
     * 使用数量
     */
    private Long useNum;


    private String startTime;

    private String endTime;
    /**
     * 是否可以停止发放
     */
    private int canStop;
    /**
     * 是否可以投放渠道
     */
    private int canPut;

    /**
     * 投放批次号
     */
    @Column(columnDefinition = "bigint comment '投放批次号'")
    private Long batchPutNo;
    /**
     * 图片地址
     */
    private String picUrl;
    public Long getMallId() {
        return mallId;
    }

    public void setMallId(Long mallId) {
        this.mallId = mallId;
    }

    public String getFaceValueType() {
        return faceValueType;
    }

    public void setFaceValueType(String faceValueType) {
        this.faceValueType = faceValueType;
    }

    public BigDecimal getFaceValue() {
        return faceValue;
    }

    public void setFaceValue(BigDecimal faceValue) {
        this.faceValue = faceValue;
    }

    public Long getQuantity() {
        return quantity;
    }

    public void setQuantity(Long quantity) {
        this.quantity = quantity;
    }

    public Long getLeaveTotal() {
        return leaveTotal;
    }

    public void setLeaveTotal(Long leaveTotal) {
        this.leaveTotal = leaveTotal;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public Long getIntegrationChannelId() {
        return integrationChannelId;
    }

    public void setIntegrationChannelId(Long integrationChannelId) {
        this.integrationChannelId = integrationChannelId;
    }

    public Long getExchangeNum() {
        return exchangeNum;
    }

    public void setExchangeNum(Long exchangeNum) {
        this.exchangeNum = exchangeNum;
    }

    public Long getReceiveNum() {
        return receiveNum;
    }

    public void setReceiveNum(Long receiveNum) {
        this.receiveNum = receiveNum;
    }

    public Long getUseNum() {
        return useNum;
    }

    public void setUseNum(Long useNum) {
        this.useNum = useNum;
    }

    public String getStartTime() {
        return startTime;
    }

    public void setStartTime(String startTime) {
        this.startTime = startTime;
    }

    public String getEndTime() {
        return endTime;
    }

    public void setEndTime(String endTime) {
        this.endTime = endTime;
    }

    public String getIntegrationChannelName() {
        return integrationChannelName;
    }

    public void setIntegrationChannelName(String integrationChannelName) {
        this.integrationChannelName = integrationChannelName;
    }

    public int getCanStop() {
        return canStop;
    }

    public void setCanStop(int canStop) {
        this.canStop = canStop;
    }

    public int getCanPut() {
        return canPut;
    }

    public void setCanPut(int canPut) {
        this.canPut = canPut;
    }

    public Long getBatchPutNo() {
        return batchPutNo;
    }

    public void setBatchPutNo(Long batchPutNo) {
        this.batchPutNo = batchPutNo;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPicUrl() {
        return picUrl;
    }

    public void setPicUrl(String picUrl) {
        this.picUrl = picUrl;
    }

    @Override
    public String toString() {
        return "MallCashCouponDto{" +
                "mallId=" + mallId +
                ", name='" + name + '\'' +
                ", faceValueType='" + faceValueType + '\'' +
                ", faceValue=" + faceValue +
                ", quantity=" + quantity +
                ", leaveTotal=" + leaveTotal +
                ", status='" + status + '\'' +
                ", integrationChannelId=" + integrationChannelId +
                ", integrationChannelName='" + integrationChannelName + '\'' +
                ", exchangeNum=" + exchangeNum +
                ", receiveNum=" + receiveNum +
                ", useNum=" + useNum +
                ", startTime='" + startTime + '\'' +
                ", endTime='" + endTime + '\'' +
                ", canStop=" + canStop +
                ", canPut=" + canPut +
                ", batchPutNo=" + batchPutNo +
                ", picUrl='" + picUrl + '\'' +
                '}';
    }
}
